package Exercise;
import java.util.*;

public class demo5 {

    /**试题 基础练习 Sine之舞
     *
     * 问题描述
     * 最近FJ为他的奶牛们开设了数学分析课，FJ知道若要学好这门课，必须有一个好的三角函数基本功。
     * 所以他准备和奶牛们做一个“Sine之舞”的游戏，寓教于乐，提高奶牛们的计算能力。
     * 不妨设： An=sin(1–sin(2+sin(3–sin(4+...sin(n))...)
     * 　　    Sn=(...(A1+n)A2+n-1)A3+...+2)An+1
     *
     * 　　FJ想让奶牛们计算Sn的值，请你帮助FJ打印出Sn的完整表达式，以方便奶牛们做题。
     * 输入格式
     * 　　仅有一个数：N<201。
     * 输出格式
     * 　　请输出相应的表达式Sn，以一个换行符结束。输出中不得含有多余的空格或换行、回车符。
     * 样例输入
     * 3
     * 样例输出
     * ((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1
     * @param args
     */
     public static void main(String[] args) {
            // TODO 自动生成的方法存根
            Scanner sc = new Scanner(System.in);
            int n = sc.nextInt();
            System.out.print(S(n));
        }
        //An=sin(1–sin(2+sin(3–sin(4+...sin(n))...)
        public static String A(int n) {
            StringBuilder sb = new StringBuilder();
            for(int i = 1 ;i<=n;i++) {
                sb.append("sin(").append(i); //是sin(i 这一小段
                //判断sin(i之后的加减号，如果是奇数，则为-，如果是偶数，则为+
                //因为最后一个字母是n，后面也没有+-号，所以判断条件中，要加上不等于n，当等于n时，后面不需要有+-号
                if(i%2==0&&i!=n) {
                    sb.append("+");
                }
                else if(i%2==1&&i!=n) {
                    sb.append("-");
                }
            }
            //最后面就是右括号，有几个n，就有几个右括号
            for(int i=0;i<n;i++) {
                sb.append(")");
            }
            //将StringBuilder转化为String，返回String
            return sb.toString();
        }
        //Sn=(...(A1+n)A2+n-1)A3+...+2)An+1
        public static String S(int n) {
            StringBuilder sb = new StringBuilder();
            //因为最后没有右括号，所以应该有n-1个左括号
            for(int i = 1;i<n;i++) {
                sb.append("(");
            }

            for(int i = 1;i<n;i++) {
                sb.append(A(i)).append("+").append(n-i+1).append(")");
            }
            //这个是最后的A(n)+1
            sb.append(A(n)).append("+").append(1);
            return sb.toString();
        }
    }
